package com.esp.service.impl;

import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

import org.springframework.beans.factory.annotation.Required;

import com.esp.Item;
import com.esp.dao.linkshare.LinkShareDataDao;
import com.esp.model.adaptors.XMLItemToIdentifiableItemAdaptor;
import com.esp.model.identifiables.IdentifiableItem;
import com.esp.parser.LinkShareItemGenerator;

public class LinkShareDataServiceImpl {
	private LinkShareDataDao linkShareDataDao;
	private LinkShareItemGenerator linkShareItemGenerator;
	private XMLItemToIdentifiableItemAdaptor dataAdaptor;

	public List<IdentifiableItem> getItemsForSearch(String searchString) {
		try {
			List<Item> items = linkShareItemGenerator.getItemsForSearch(searchString);
			List<IdentifiableItem> identifiableItems = dataAdaptor.xmlsToIdentifiables(items);
			//linkShareDataDao.saveAllResult(identifiableItems);
			return identifiableItems;
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return new ArrayList<IdentifiableItem>();
	}
	
	@Required
	public void setLinkShareDataDao(LinkShareDataDao linkShareDataDao) {
		this.linkShareDataDao = linkShareDataDao;
	}
	
	@Required
	public void setLinkShareItemGenerator(LinkShareItemGenerator linkShareItemGenerator) {
		this.linkShareItemGenerator = linkShareItemGenerator;
	}
	
	@Required
	public void setDataAdaptor(XMLItemToIdentifiableItemAdaptor dataAdaptor) {
		this.dataAdaptor = dataAdaptor;
	}
}
